CV Capstone Project
Files Submitted
Criteria | Meet Specification |
---|---|
Submission Files |
|
Step 1: Add eye detections to the face detection setup
Criteria | Meet Specification |
---|---|
Add eye detections to the current face detection setup. |
The submission returns proper code detecting and marking eyes in the given test image. |
Step 2: De-noise an image for better face detection
Criteria | Meet Specification |
---|---|
De-noise an image for better face detection. |
The submission completes de-noising of the given noisy test image with perfect face detections then performed on the cleaned image. |
Step 3: Blur and edge detect an image
Criteria | Meet Specification |
---|---|
Blur and edge detect a test image. |
The submission returns an edge-detected image that has first been blurred, then edge-detected, using the specified parameters. |
Step 4: Automatically hide the identity of a person
Criteria | Meet Specification |
---|---|
Find and blur the face of an individual in a test image. |
The submission should provide code to automatically detect the face of a person in a test image, then blur their face to mask their identity. |
Step 5: Specify the network architecture
Criteria | Meet Specification |
---|---|
Specify a convolutional network architecture for learning correspondence between input faces and facial keypoints. |
The submission successfully provides code to build an appropriate convolutional network. |
Step 6: Compile and train the model
Criteria | Meet Specification |
---|---|
Compile and train the CNN for facial keypoint detection. |
The submission successfully compiles and trains the CNN. |
Step 7: Answer a few questions and visualize the loss
Criteria | Meet Specification |
---|---|
Answer a few questions about your training and visualize the loss function. |
The submission successfully discusses any potential issues with their training, and answers all of the provided questions. |
Step 8: Complete a facial keypoints detector
Criteria | Meet Specification |
---|---|
Combine OpenCV face detection with your trained CNN facial keypoint detector. |
The submission successfully combines OpenCV's pre-processing techniques and face detection with a trained CNN keypoint detector. |
Tips to make your project standout:
1. Extend to Video
Many of these computer vision applications can be extended to work on a laptop camera or video file.
2. Add Fun Filters
After detecting facial keypoints, use their locations to overlay fun images on a face (like sunglasses or extra accessories). You can also create filters to automatically blur and edge detect a specific facial region.
3. Improve Face Detection
OpenCV's Haar Cascades aren't perfect, but they work well on faces facing the front of a camera; use a geometric transform and facial keypoints to transform images of faces so that they can be detected better from the side.
4. Track Facial Keypoints
Use optical flow or another tracking algorithm to track how facial keypoints move over time (in video or a series of image frames).
5. Extend to a Mobile App
OpenCV can be used cross-platform on iOS and Android devices. So, you can build this same app to work on those platforms!